import math

def gerar_cubos(n):
    for i in range(n):
        yield i ** 3

def gerar_quadrados(n):
    for i in range(n):
        yield i ** 2

def raiz(x, y):
    return math.sqrt( x + y)

lista = map(raiz, gerar_cubos(5), gerar_quadrados(5))
i = 0

while i < 5:
    print i, " - >", math.sqrt(i ** 3 + i ** 2), "==", lista[i]

    i+= 1
